package com.ms.demo;

/**
 * 我们将创建一个抽象类 Shape 和扩展了 Shape 类的实体类。下一步是定义类 ShapeCache，该类把 shape 对象存储在一个 Hashtable 中，并在请求的时候返回它们的克隆。
 *
 * @description: 使用 ShapeCache 类来获取存储在 Hashtable 中的形状的克隆
 * @author: ms
 * @create: 2022-10-24 10:46
 */
public class TestMain {

    public static void main(String[] args) {

        ShapeCache.loadCache();//模拟从数据库中查询数据 并保存到HashTable里去

        //获取存储在HashTable中的形状的克隆
        Shape clonedShape = (Shape) ShapeCache.getShape("1");
        System.out.println("Shape : " + clonedShape.getType());

        Shape clonedShape2 = (Shape) ShapeCache.getShape("2");
        System.out.println("Shape : " + clonedShape2.getType());

        Shape clonedShape3 = (Shape) ShapeCache.getShape("3");
        System.out.println("Shape : " + clonedShape3.getType());
    }
}